Skip to main content link. Accesskey S
  • Help
  • HCL Logo
  • HCL Sametime wiki
  • THIS WIKI IS READ-ONLY. Individual names altered for privacy purposes.
  • HCL forums and blogs
  • Home
  • Product Documentation
  • Community Articles
  • Learning Center
Search
Community Articles > Installation > IBM TURN Server deployment and configuration
  • Share Show Menu▼
  • Subscribe Show Menu▼

Recent articles by this author

Community articleIBM TURN Server deployment and configuration
Added by ~Alexis Ekfanabergjip | Edited by ~Richard Dwojumichekoden on September 2, 2015 | Version 16
expanded Abstract
collapsed Abstract
Instructions and examples for deploying a Sametime TURN Server in a single node deployment
Article written by Akash U Dhoot and Shailendra Moyal

TURN Server single node deployment:

Scenario 1

The IBM Sametime TURN Server is deployed into the DMZ. Other media components are deployed on the internal network and do not have any direct connectivity with the TURN Server.
Port/Port Range
Transport
From
To
3478
UDP/TCP
Internal Client, External Client
TURN Server
49152-65535
UDP
Internal Client
TURN Server
20830-20930
UDP
TURN Server
Internal Client
49152-65535
UDP
VMCU
TURN Server
40000 to 49999 UDP
(Starting with S9 GA until OpenSSL Security Bulletin released in August 2015)
49152-59151 UDP
( Starting with OpenSSL Security Bulletin released in August 2015 )
UDP
TURN Server
VMCU
40000 to 49999 UDP
(Starting with S9 GA until OpenSSL Security Bulletin released in August 2015)
49152-59151 UDP
( Starting with OpenSSL Security Bulletin released in August 2015 )
UDP
Internal Client
VMCU
20830-20930
UDP
VMCU
Internal Client

General Configuration

The TURN Server has one interface.
No changes are required to the TurnServer.properties file.

The TURN Server has multiple interfaces ( Private and Public ):

turn.local.hostname.ipv4=turn public interface ip
turn.allocation.hostname.ipv4=turn private interface ip

Note: If internal clients are in same subnet, it is not necessary that clients connect to the TURN Server. To achieve this configuration, the TURN Server implements split horizon DNS so that the internal client resolves the TURN Server host name to 0.0.0.0 and the external client resolves the TURN Server host name to public IP.

Scenario 2

The TURN Server is deployed into the DMZ. Other media components are also deployed on the DMZ network and do have direct connectivity with the TURN Server.

Ports Configuration
Port/Port Range
Transport
From
To
3478
UDP/TCP
Internal Client, External Client
Internal Client
49152-65535
UDP
Internal Client
TURN Server
20830-20930
UDP
TURN Server
Internal Client
49152-65535
UDP
VMCU
TURN Server
40000-49999
UDP
TURN Server
VMCU
40000-49999
UDP
Internal Client
VMCU
20830-20930
UDP
VMCU
Internal Client

General Configuration

The TURN Server has one interface.
No changes are required in the TurnServer.properties file.
The TURN Server has multiple interfaces ( Private and Public )

turn.local.hostname.ipv4=turn public interface ip
turn.allocation.hostname.ipv4=turn private interface ip

Note: If internal clients are in the same subnet, it is not necessary that clients connect to the TURN Server. To achieve this configuration, the TURN Server implements split horizon DNS so that the internal client resolves the TURN host name to 0.0.0.0 and the external client resolves the TURN Server host name to a public IP.


TURN Server cluster deployment
There are two TURN Server cluster deployments discussed here:

1. Setting up the TURN Server cluster deployment using the IBM Load-Balancer. For more information, see this procedure:
Deploying a load balancer with Sametime TURN Servers
2. Setting up the TURN Server cluster deployment using the Big IP F5 Load-Balancer. For more information, see Case 1 in this article.

Case 1: TURN Server Fronted by F5 Load-Balancer
  1. The Sametime TURN Server needs an internal IP address assigned. Configure these properties in the TurnServer.properties file:

turn.local.hostname.ipv4=TURN_Server_NIC_Internal_IP_Addr
turn.allocation.hostname.ipv4=TURN_Server_NIC_Internal_IP_Addr

2. Create two virtual hosts on the Big IP (F5) for UDP-3478 and TCP-3478.


3. Enure the virtual hosts have a server pool defined which has all of the TURN Server nodes added as pool members. The TURN server pool members connect to the TURN NIC internal interface.
4. Ensure that the same client connection connects to the same TURN Server member and requires a persistence rule to be applied on the TURN Server virtual host. Complete these steps:
  1. Log in to F5 admin console.
  2. Navigate to Local Traffic -- Virtual Servers -- Virtual Server List.
  3. Search for the TURN Server virtual host and click the link.
  4. In the Resources section, in Default Persistence Profile, select source_add.
  5. Click Update.

The F5 Virtual Host allocated for the TURN Server must have a Public IP assigned and be accessible from the client computer.

Port Configuration
Port/ Port Range
Transport
From
To
3478
UDP/TCP
Internal Client, External Client
TURN Server F5 VH
49152-65535
UDP
Internal Client
TURN Server Internal IP
20830-20930
UDP
TURN Server Internal IP
Internal Client
49152-65535
UDP
VMCU
TURN Server Internal IP
40000-49999
UDP
TURN Server Internal IP
VMCU
40000-49999
UDP
Internal Client
VMCU
20830-20930
UDP
VMCU
Internal Client

Case 2: External (Public) address available for TURN Server nodes

The Sametime TURN Server needs two network interface cards: NIC-Public and NIC-Internal.

1. Configure these properties in the TurnServer.properties file:

turn.local.hostname.ipv4=TURN_Server_NIC_Public_IP_Addr
turn.allocation.hostname.ipv4=TURN_Server_NIC_Internal_IP_Addr
turn.loopback.hostname.ipv4=TURN_Server_NIC_Internal_IP_Addr
turn.redirect.hostname.ipv4=TURN_Server_NIC_Public_IP_Addr

2. Create two virtual hosts on the Big IP (F5) for UDP-3478 and TCP-3478.

3. Ensure that the virtual host (VH1) has a pool defined with all TURN Server nodes added as pool members. All TURN server pool members connect to the TURN NIC internal interface.

4. Ensure that the virtual host and all TURN Server nodes have a Public IP assigned and are accessible from the client computer.

Port Configuration
Port/Port Range
Transport
From
To
3478
UDP / TCP
Internal Client, External Client
TURN Server nodes and TURN F5 VH
49152-65535
UDP
Internal Client
TURN Server Internal IP
20830-20930
UDP
TURN Server Internal IP
Internal Client
49152-65535
UDP
VMCU
TURN Server Internal IP
40000-49999
UDP
TURN Server Internal IP
VMCU
40000-49999
UDP
Internal Client
VMCU
20830-20930
UDP
VMCU
Internal Client

Case 3: External address not available for TURN Server
  1. The TURN Server should have two network interface cards: NIC-1 and NIC-2. Configure the following properties in the TurnServer.properties file:

turn.local.hostname.ipv4=TURN_Server_NIC_1_IP_Addr
turn.allocation.hostname.ipv4=TURN_Server_NIC_1_IP_Addr
turn.loopback.hostname.ipv4=TURN_Server_NIC_2_IP_Addr
turn.redirect.hostname.ipv4=TURN_Server_F5_Virtual_Host_Dedicated_To_This_Node

2. Create N+1 virtual hosts on the Big IP F5 ('N' represents number of TURN Server nodes)


3. Ensure that one virtual host (VH1) has a server pool defined which has all TURN Server nodes added as pool members. The Turn server pool members connect to TURN NIC-2.
4. Ensure that other virtual hosts have pools assigned where those pools have one to one mapping with TURN Server node and those pool members are connecting TURN servers NIC-1.
5. Ensure that all N+1 virtual hosts have a Public IP assigned and accessible from the client computer.

Port Configuration:
Port/Port Range
Transport
From
To
3478
UDP/TCP
Internal Client, External Client
All N+1 TURN Server F5 VH
49152-65535
UDP
Internal Client
TURN Server Internal IP
20830-20930
UDP
TURN Server Internal IP
Internal Client
49152-65535
UDP
VMCU
TURN Server Internal IP
40000-49999
UDP
TURN Server Internal IP
VMCU
40000-49999
UDP
Internal Client
VMCU
20830-20930
UDP
VMCU
Internal Client
expanded Attachments (0)
collapsed Attachments (0)
expanded Versions (19)
collapsed Versions (19)
Version Comparison     
VersionDateChanged by              Summary of changes
19Sep 2, 2015, 6:37:29 PM~Alexis Ekfanabergetsi  
18Sep 2, 2015, 5:28:16 PM~Richard Dwojumichekoden  
17Sep 2, 2015, 5:24:51 PM~Richard Dwojumichekoden  
This version (16)Sep 2, 2015, 5:24:14 PM~Richard Dwojumichekoden  
15Jan 20, 2015, 6:22:32 PM~Richard Dwojumichekoden  
14Jan 20, 2015, 3:36:46 PM~Richard Dwojumichekoden  
13Jan 20, 2015, 3:36:37 PM~Richard Dwojumichekoden  
12Jan 20, 2015, 3:32:30 PM~Richard Dwojumichekoden  
11Jan 20, 2015, 3:28:34 PM~Richard Dwojumichekoden  
10Jan 15, 2015, 7:47:53 PM~Richard Dwojumichekoden  
9Jan 15, 2015, 7:39:48 PM~Richard Dwojumichekoden  
7Jan 15, 2015, 7:33:30 PM~Richard Dwojumichekoden  
6Jan 13, 2015, 9:48:20 PM~Richard Dwojumichekoden  
6Jan 13, 2015, 8:51:28 PM~Richard Dwojumichekoden  
5Jan 13, 2015, 7:42:56 PM~Richard Dwojumichekoden  
4Jan 13, 2015, 7:40:08 PM~Richard Dwojumichekoden  
3Jan 13, 2015, 7:35:02 PM~Richard Dwojumichekoden  
2Jan 13, 2015, 7:31:56 PM~Richard Dwojumichekoden  
1Jan 13, 2015, 7:14:21 PM~Richard Dwojumichekoden  
Copy and paste this wiki markup to link to this article from another article in this wiki.
Go ElsewhereStay ConnectedAbout
  • HCL Software
  • HCL Digital Solutions community
  • HCL Software Support
  • BlogsDigital Solutions blog
  • Community LinkHCL Software forums and blogs
  • About HCL Software
  • Privacy
  • Accessibility